Brake preload system for autonomous vehicles

ABSTRACT

Vehicles according to at least some embodiments of the disclosure include a sensor, and a computing device comprising at least one hardware processing unit. The computing device is programmed to perform operations comprising capturing an image with the sensor, identifying an object in the image, and in response to an accuracy of the identification meeting a first criterion, pre-loading a braking system of the autonomous vehicle. In some aspects, the computing device may predict that an object not currently within a path of the vehicle has a probability of entering the path of the vehicle that meets a second criterion. When the probability of entering the path meets the second criterion, some of the disclosed embodiments may pre-load the braking system.

CROSS REFERENCE TO RELATED APPLICATIONS

This application is a continuation of U.S. application Ser. No.16/210,967, filed Dec. 5, 2018, which claims priority to U.S.Provisional Application No. 62/736,767, filed Sep. 26, 2018 and entitled“BRAKE PRE-LOAD SYSTEM FOR AUTONOMOUS VEHICLES.” The contents of each ofwhich are considered part of this application, and are herebyincorporated by reference in their entireties.

FIELD

The document pertains generally, but not by way of limitation, todevices, systems, and methods for operating an autonomous vehicle. Inparticular, the disclosure relates to control of a braking system for anautonomous vehicle.

BACKGROUND

An autonomous vehicle is a vehicle that is capable of sensing itsenvironment and operating some or all of the vehicle's controls based onthe sensed environment. An autonomous vehicle includes sensors thatcapture signals describing the environment surrounding the vehicle. Theautonomous vehicle processes the captured sensor signals to comprehendthe environment and automatically operates some or all of the vehicle'scontrols based on the resulting information.

DRAWINGS

In the drawings, which are not necessarily drawn to scale, like numeralsmay describe similar components in different views. Like numerals havingdifferent letter suffixes may represent different instances of similarcomponents. Some embodiments are illustrated by way of example, and notof limitation, in the figures of the accompanying drawings.

FIG. 1 is a diagram showing one example of an environment including avehicle.

FIG. 2A is a graph illustrating the three states in at least some of thedisclosed embodiments.

FIG. 2B shows three graphs illustrating recognition accuracy, pressure,and braking force aligned along a shared time axis.

FIG. 3 is a graph showing a level of object recognition accuracy overtime in one example embodiment.

FIG. 4 shows an example data flow that may be implemented in at leastsome of the disclosed embodiments.

FIG. 5 depicts a block diagram of an example vehicle according toexample aspects of the present disclosure.

FIG. 6 is a diagram showing one example of a brake system that may beused in an AV, such as the vehicle of FIG. 1 or of FIG. 5 .

FIG. 7 is a flowchart of an example method for pre-loading a brakingsystem.

FIG. 8 is a flowchart of an example method for pre-loading a brakingsystem.

FIG. 9 is a flowchart of an example method for applying brakes in anautonomous vehicle.

FIG. 10 is a block diagram showing one example of a softwarearchitecture for a computing device.

FIG. 11 is a block diagram illustrating a computing device hardwarearchitecture, within which a set or sequence of instructions can beexecuted to cause a machine to perform examples of any one of themethodologies discussed herein.

DETAILED DESCRIPTION

Examples described herein are directed to systems and methods foroperating an AV. In an AV, a vehicle autonomy system controls one ormore of the braking, steering, or throttle of the vehicle. An AV may befully-autonomous or semi-autonomous. In a fully-autonomous vehicle, thevehicle autonomy system assumes full control of the vehicle. In asemi-autonomous vehicle, the vehicle autonomy system assumes a portionof the vehicle control, with a human user (e.g., a vehicle operator)still providing some control input.

Autonomous vehicles employ computer based perception systems torecognize objects within the environment of the autonomous vehicle. Theperception system then predicts the future actions of the detectedobjects, which are inputted into the autonomous vehicle's motionplanner. In turn, the motion planner calculates a planned trajectory forthe autonomous vehicle that maintains safe vehicle operation.

Depending on a number of factors, objects may be recognized by theperception system at a variety of confidence or accuracy levels. Forexample, objects may be more difficult to detect, recognize, and/orpredict at farther distances. In some situations, the perception systemmay identify the presence of an object, but may be unable to determine atype of the object at a particular level of accuracy. Furthermore, theperception system may erroneously identify an object when there is noactual object due to spurious sensor noise. In other situations, theperception system may be able to determine the type of object accuratelybut unable to predict the object's future action at a particular levelof accuracy. To ensure safe vehicle operation, the AV may apply thebrakes in response to it detecting an object with low accuracy becausethe perception system may assume the worst-case scenario. If the objectdoes not actually present a threat to safe operation (e.g., there is noactual object, the object is harmless (e.g., a plastic bag or a leafblowing in the wind), or the object is behaving in a way that does notinterfere with the motion plan (e.g., the object is at a safe distanceand is traveling away from the autonomous vehicle faster than theautonomous vehicle is traveling) the brakes may be appliedunnecessarily, which may reduce ride comfort and/or safety.

The disclosed embodiments reduce the occurrences of undesirablebehaviors by the autonomous vehicle due to perception inaccuracies(e.g., detection, identification, and/or prediction) while stillensuring safe operation in the event the autonomous vehicle shouldengage its brakes. This is accomplished by the autonomous vehiclepre-loading the braking system of the vehicle in response to aperception accuracy level not satisfying a predetermined criterion (suchas meeting a threshold level of confidence). Pre-loading the brakingsystem prepares for braking, if necessary, while providing theperception system with additional time to improve the accuracy of theobject's perception before actually engaging the braking system. Whilethe perception system is improving the accuracy of recognition, thevehicle continues to travel along its motion plan as long as it iscapable of stopping before a possible collision. Because of thepre-loading, a reduced braking distance is required if the perceptionsystem is not able to resolve the perception accuracy or if the objectis later recognized as a legitimate threat to vehicle safety.Pre-loading of the braking system allows the autonomous vehicle tomaintain safe operation in this situation by reducing a braking distancerequired after a decision to apply a braking force is made. It may notbe desirable to maintain the braking system in a constant state ofpre-loading. For example, a pre-loaded braking system may experiencegreater wear, noise, energy consumption or other undesirable effectswhen compared to a braking system in a quiescent or not pre-loadedstate.

In embodiments that utilize an air-based braking system, pre-loading thebrakes may include partially pressurizing one or more braking chambersto a pressure insufficient to exert a braking force on the vehicle, butsufficient to reduce a delay in reaching a braking pressure whenapplication of a braking force is called for. Pre-loading the brakingsystem provides for more immediate application of stopping force to thevehicle upon reception of a braking signal, as compared to a system thatpre-loads after reception of the signal. In some scenarios, pre-loadingthe brakes can reduce stopping distance by approximately thirty (30)feet when stopping from 60 miles per hour (MPH).

In an example embodiment, the motion planner monitors the current levelof brake pre-loading to determine the stopping time (or stoppingdistance) the autonomous vehicle requires at the given level. Forexample, higher levels of pre-loading results in less stopping time.Based on the determined stopping time, the motion planner is configuredto trigger engagement of the brakes to ensure that the autonomousvehicle does not collide with the object.

During the additional time made available via the pre-loading of thebraking system, the perception system may perform a variety ofoperations to increase accuracy of object recognition. For example, theperception system may use the additional time to perform additionalscans or sweeps of a vehicle path using imaging and/or ranging sensors.By utilizing data from multiple sensors and/or multiple sweeps by asingle sensor, noise may be reduced from an object recognition pipelineof the perception system, with any objects still recognized after themultiple data sources having a higher recognition confidence oraccuracy.

The perception system may also use the additional time to refine aclassification of objects detected in data from one or more sensors. Forexample, in some embodiments, the perception system may determine a setof probabilities that an object is any one object type in acorresponding set of object types. For example, the perception systemmay compute a first probability that the object is a pedestrian, and asecond probability that the object is a plastic bag. In some cases,available sensor data may be providing a relatively low resolution of anobject, such that both the first and second probabilities are relativelylow. This may result in the probabilities generated by the perceptionsystem being too low to recognize an object with a sufficient level ofaccuracy. Applying brakes with the existing level of accuracy may resultin a false positive, for example, if the object turns out to not be apedestrian but instead is later recognized by the perception system,after the brakes have been applied, as a paper bag. These sameprobabilities may not be too low however to justify pre-loading thebraking system. While the brakes are pre-loaded, and as a result of acollection of additional sensor data with additional time for analysisof the data, the perception system may recompute the probabilities. Therecomputed probabilities may reflect an increased level of recognitionaccuracy, providing for a decision to either ignore the object (e.g.,noise or recognized as an object that does not present a risk of vehiclesafety) or apply a braking force.

In example embodiments, maintaining the pre-load in the system occursfor short bursts upon low confidence detections, with little to noeffect on the nominal cruising speed of the autonomous vehicle. Thereare a number of ways that the pre-load level is maintained withoutslowing down the vehicle or applying the brakes with excessive stoppingforce. These may include: a) pressure based pre-load control (e.g. fluidpressure such as air or liquid (e.g. brake fluid/oil)), or mechanicalpressure (i.e. force/area)); b) closed loop motion based pre-loadcontrol (e.g. velocity, acceleration of the vehicle); c) electricalresistivity sensing based pre-load control (e.g. resistance between padsto rotors or shoes to drums); and/or d) time based pre-load control(e.g. decision to brake/not brake to be made within pre-load time).There can be constraints on the maximum rate of pre-load triggering aswell as the maximum duration for maintaining the pre-load while waitingfor a high confidence detection decision.

In example embodiments, while in the pre-loading state, nominally thethrottle would be off and the vehicle would maintain approximatelyconstant velocity. However, depending on how finely the pre-load can becontrolled and characterized as well as the throttle responsiveness,some embodiments may continue normal operation of the throttle duringbrake pre-load stage to reduce system disruptions in false-positiveinstances. The brake lights may be illuminated on or off with similarthresholding logic as the throttle.

FIG. 1 is a diagram showing one example of an environment 100 includinga vehicle 102. The vehicle 102, in some examples, is a self-drivingvehicle (SDV) or AV comprising a vehicle autonomy system 106 foroperating the vehicle without human intervention. In some examples, thevehicle 102 also, in addition to or instead of a fully-autonomous mode,includes a semi-autonomous mode in which a human user is responsible forsome or all control of the vehicle.

In the example of FIG. 1 , the vehicle 102 is a tractor-trailerincluding a tractor 104 and a trailer 105. In various other examples,the vehicle 102 does not include a trailer and may be, for example, adump truck, a bus, or any other similar vehicle. Also, in some examples,the vehicle 102 is a passenger vehicle or other suitable type ofvehicle.

The vehicle 102 has one or more remote detection sensors 107 thatreceive return signals from the environment 100. Return signals may bereflected from objects in the environment 100, such as the ground,buildings, and trees. The remote detection sensors 107 may include oneor more active sensors, such as light detection and ranging (LIDAR),radio detection and ranging (RADAR), or sound navigation and ranging(SONAR) that emit sound or electromagnetic radiation in the form oflight or radio waves to generate return signals. The remote detectionsensors 107 may also include one or more active sensors, such as camerasor other imaging sensors and proximity sensors. Information about theenvironment 100 is extracted from the return signals. In some examples,the remote detection sensors 107 include a passive sensor that receivesreflected ambient light or other radiation, such as a set ofstereoscopic cameras.

The example of FIG. 1 shows the vehicle autonomy system 106 and part ofa braking system 108 for the vehicle 102. The vehicle autonomy system106 is configured to receive signals from the remote detection sensors107 and determine a set of vehicle actions. For example, the vehicleautonomy system 106 may include a perception system, a predictionsystem, a motion planning system, and/or a pose system, described inmore detail with respect to FIG. 2A. The vehicle autonomy system 106also includes one or more controllers that are electrically or otherwiseconnected to control interfaces for various vehicle controls, describedin more detail herein.

The braking system 108 includes a service brake chamber 110. In theexample of FIG. 1 , the braking system 108 also includes a foundationbrake 114. The foundation brake 114 includes a mechanism positioned atthe wheels or axles of the vehicle 102 to slow or stop the vehicle 102.In some examples, the service brake chamber 110 engages the foundationbrake 114.

Although one service brake chamber 110, and one foundation brake 114 areshown in FIG. 1 , the vehicle 102 may have multiple instances of each.For example, service brake chambers similar to the service brake chamber110 and foundation brakes similar to foundation brake 114 may bepositioned at some or all wheels of the vehicle 102.

The braking system 108 also includes a compressor 111 that generatespressurized air and a pressurized air reservoir 120 to hold thepressurized air. The service brake chamber 110 is in fluid communicationwith the pressurized air reservoir 120 (also referred to as “reservoir120”) via a service brake line 131. A service brake valve 116 on theservice brake line 131 controls a flow of pressurized air from thereservoir 120 to the service brake chamber 110. The service brake valve116 is responsive to service brake commands received from the vehicleautonomy system 106 to modulate the flow of pressurized air from thereservoir 120 to the service brake chamber. An optional pressure sensor118 is also shown. The pressure sensor 118 is responsive to the pressurein the service brake line 132 to generate a pressure signal 122 that isprovided to the vehicle autonomy system 106. In some examples, thepressure signal 122 is also used to disable the vehicle autonomy system,for example, by disconnecting it from vehicle controls, as describedherein.

The braking system 108 may be configured to operate in at least threestates. FIG. 2A is a graph 150 illustrating the three states in at leastsome of the disclosed embodiments, and how the three states relate to abraking pressure 154 within a braking system. FIG. 2A shows a firststate or quiescent state 156 below a nominally ambient pressure 157. Thebraking system exists in the first state when the braking system is at avery low or ambient pressure. In this first state 156, there isessentially no pressure between friction surfaces of the braking system.There is also little or no pressure against seals or other componentswithin the braking system. The compressor 111 may also be unpowered whenthe braking system is in this first state, as the system 108 is notworking to maintain any pressure above ambient 157 in the braking system108. A second state of the braking system is a pre-loaded state 158. Inthe pre-loaded state 158, a pressure of the braking system as shown bythe axis or line 152 is maintained above an ambient pressure 157 butbelow a brake application pressure 160. Note that a pressure within thebraking system 108 when in the second state may encompass any pressurewithin the range of pressures represented by pre-loaded state 158 ingraph 150. As discussed above, the brake application pressure 160 is apressure where friction surfaces of the braking system becomeeffectively engaged to begin to exert a non-di-minimis braking forceagainst motion of the AV. Because the pressure within the braking systemis above ambient pressure when in the pre-loaded state 158, some wear tofriction surfaces, seals, hoses, and other brake system components maybe experienced in this state. In some embodiments, rear brake lights mayilluminate when the braking system is in the pre-loaded state 158.However, no substantial braking force is applied to the vehicle when thebraking system operates in the second or pre-loaded state. In a thirdstate 162, braking force is applied by the braking system. Note that thethird state 162 may encompass a range of pressures within the brakingsystem. The pressure within the braking system may vary the amount ofbraking force applied in the third state 162, with heavy brakingrequiring more pressure than light braking.

FIG. 2B shows three graphs illustrating recognition accuracy of anobject in a vehicle path, pressure within a braking system of thevehicle, and applied braking force to the vehicle respectively. Eachgraph is aligned along a shared time axis. An accuracy graph 250includes three thresholds 252 a-c. A first threshold 252 a indicates alevel of recognition accuracy of the object 254 that causes the brakesto be applied on the vehicle. In other words, if the recognitionaccuracy level 254 is above the threshold 252 a, a braking force isapplied to the vehicle. Threshold 252 b indicates a level of recognitionaccuracy that causes a braking system of the vehicle to be pre-loaded,as discussed above. Thus, if the accuracy level falls between thethreshold 252 b and the threshold 252 a, the brakes are pre-loaded, andif the recognition accuracy level is above the threshold 252 a, thebrakes are applied. Graph 250 also shows a threshold 252 c, whichindicates an accuracy level below which, the braking system istransitioned from a pre-loaded state to a quiescent or pre-load offstate. The braking system may also be transitioned from a pre-loadedstate to a quiescent state after a threshold period of time in thepre-loaded state in some aspects. Graph 250 shows that there is a regionbelow the threshold 252 b and above the threshold 252 c. Thus, inembodiments implemented according to graph 250, a braking system placedin a pre-loaded state based on the threshold 252, is not removed fromthe pre-loaded state when the recognition accuracy 254 drops below thethreshold 252 b. Instead, the recognition accuracy 254 needs to dropbelow the threshold 252 c before the braking system will be transitionedfrom the pre-loaded state to a quiescent state. A system according tosuch an implementation may be described as including a hysteresis.Hysteresis methods may be used to control one or more of the pre-loadingof the braking system and/or application of a braking force, asdescribed below with respect to graph 270.

Graph 260 shows three thresholds 258 a-c that are compared to a pressure262 within the braking system. Threshold 258 c represents an ambientpressure within the braking system. Threshold 258 b represents apressure that is present in the braking system when the braking systemis in the pre-loaded state. Threshold 258 a represents a pressure withinthe braking system, above which causes a braking force to be beingapplied to the vehicle.

Graph 270 shows braking force 272 applied to the vehicle. Thecombination of graphs 260 and 270, which share equivalent time axis,demonstrate that when the pressure 262 rises above the threshold 258 a,the braking force 272 becomes non-zero, and increases as the pressure262 increases.

FIG. 3 is a graph 175 showing an example level of an object'srecognition accuracy 176 over time in one embodiment. The recognitionaccuracy 176 may be an accuracy computed by the perception system of anautonomous vehicle. In some aspects, the recognition accuracy 176 mayrepresent a highest probability determination that a detected object isa particular type of object. As discussed above, in some aspects, theperception system 203 may be configured to compute a set ofprobabilities for a detected object, with each representing aprobability that the detected object is of a particular object type. Ahighest probability of these probabilities may be said to indicate thatthe object is “recognized” as the type of object associated with thehighest probability. Other methods of computing a recognition accuracyare also contemplated.

The recognition accuracy 176 may increase over time 177. For example,the perception system 203 may receive additional sensor data over timethat enables an increase (or decrease) in the object's recognitionaccuracy. During a first portion of the graph 175, the recognitionaccuracy 176 is above a pre-load threshold 185 but below a brakingthreshold 178. Since the accuracy is below the threshold 178, the brakesmay be pre-loaded to prepare the braking system for application, whilealso providing the perception system 203 with additional time 180 toincrease the recognition accuracy 176. Once the recognition accuracy 176rises above the braking threshold 178, the perception system 203 isbetter able to distinguish between objects that represent a legitimatethreat to safety, such as a recognition of the object as a pedestrian,bicyclist, or even an animal such as a deer or a squirrel, and otherobjects that do not represent a threat to safety, such as a leaf orplastic bag. If the object is one that represents a threat, the brakesmay be applied. In other words, a stopping force is applied to anautonomous vehicle by application of the brakes.

FIG. 4 illustrates a data flow that may be implemented in at least someof the disclosed embodiments. The data flow 400 of FIG. 4 shows aperception system 203 receiving three different images 402 a-c over aperiod of time. The images may be comprised of data collected via atleast one or more of visual imaging, infrared imaging, RADAR imaging, orLIDAR imaging. Any imaging technology that provides for remote detectionsensing of an environment may be used.

Each of the images 402 a-c may or may not represent a first object O₁and a second object O₂. FIG. 4 shows the perception system receivingdata from a first image 402 a. The perception system may, based on atleast the first image 402, calculate a first set of probabilities 404 a.The probabilities 404 a include probabilities that the first object O₁is each object type in a set of object types. These probabilities arerepresented in FIG. 4 as P1 ₁ . . . P1 _(n). The perception system 203may also, based on at least the first image 402, calculate probabilitiesthat the second object O₂ is each object type in a set of object types.These probabilities are shown as P2 ₁ . . . P2 _(n).

At some later time, a second image 402 b is provided to the perceptionsystem 203. Based at least on the first image 402 a and the second image402 b, the perception system 203 calculates a second set ofprobabilities 404 b. The second set of probabilities 404 b includesupdated probabilities P1 ₁ . . . P1 _(n) and P2 ₁ . . . P2 _(n).

At a further later time, a third image 402 c is provided to theperception system 203. Based at least on the first image 402 a, secondimage 402 b, and third image 402 c, the perception system 203 maygenerate a third set of probabilities 404 c, including updated valuesfor probabilities P1 ₁ . . . P1 _(n) and P2 ₁ . . . P2 _(n). An accuracyof each of the probabilities P1 ₁ . . . P1 _(n) and P2 ₁ . . . P2 _(n)within each of the sets of probabilities 404 a-c may be used todetermine whether to pre-load a braking system of an autonomous vehicleand/or apply a braking force to the autonomous vehicle, as discussedthroughout this disclosure.

FIG. 5 depicts a block diagram of an example vehicle 200 according toexample aspects of the present disclosure. The vehicle 200 can be, forexample, an AV. The vehicle 200 includes one or more sensors 201, avehicle autonomy system 202, and one or more vehicle controls 207.

The vehicle autonomy system 202 can be engaged to control the vehicle200 or to assist in controlling the vehicle 200. In particular, thevehicle autonomy system 202 receives sensor data from the one or moresensors 201, attempts to comprehend the environment surrounding thevehicle 200 by performing various processing techniques on datacollected by the sensors 201, and generates an appropriate motion paththrough the environment. The vehicle autonomy system 202 can control theone or more vehicle controls 207 to operate the vehicle 200 according tothe motion path.

The vehicle autonomy system 202 includes a perception system 203, aprediction system 204, a motion planning system 205, and a pose system230 that cooperate to perceive the surrounding environment of thevehicle 200 and determine a motion plan for controlling the motion ofthe vehicle 200 accordingly. The pose system 230 may be arranged tooperate as described herein.

Various portions of the vehicle autonomy system 202 receive sensor datafrom the one or more sensors 201. For example, the sensors 201 mayinclude remote detection sensors as well as motion sensors such as aninertial measurement unit (IMU), one or more encoders, or one or moreodometers. The sensor data can include information that describes thelocation of objects within the surrounding environment of the vehicle200, information that describes the motion of the vehicle, and so forth.

The sensors 201 may also include one or more remote detection sensors orsensor systems, such as a LIDAR, a RADAR, or one or more cameras. As oneexample, a LIDAR system of the one or more sensors 201 generates sensordata (e.g., remote detection sensor data) that includes the location(e.g., in three-dimensional space relative to the LIDAR system) of anumber of points that correspond to objects that have reflected aranging laser. For example, the LIDAR system can measure distances bymeasuring the Time of Flight (TOF) that it takes a short laser pulse totravel from the sensor to an object and back, calculating the distancefrom the known speed of light.

As another example, a RADAR system of the one or more sensors 201generates sensor data (e.g., remote detection sensor data) that includesthe location (e.g., in three-dimensional space relative to the RADARsystem) of a number of points that correspond to objects that havereflected ranging radio waves. For example, radio waves (e.g., pulsed orcontinuous) transmitted by the RADAR system can reflect off an objectand return to a receiver of the RADAR system, giving information aboutthe object's location and speed. Thus, a RADAR system can provide usefulinformation about the speed of an object.

As yet another example, one or more cameras of the one or more sensors201 may generate sensor data (e.g., remote detection sensor data)including still or moving images. Various processing techniques (e.g.,range imaging techniques such as structure from motion, structuredlight, stereo triangulation, and/or other techniques) can be performedto identify the location (e.g., in three-dimensional space relative tothe one or more cameras) of a number of points that correspond toobjects that are depicted in image or images captured by the one or morecameras. Other sensor systems can identify the location of points thatcorrespond to objects as well.

As another example, the one or more sensors 201 can include apositioning system. The positioning system can determine a currentposition of the vehicle 200. The positioning system can be any device orcircuitry for analyzing the position of the vehicle 200. For example,the positioning system can determine a position by using one or more ofinertial sensors, a satellite positioning system such as a GlobalPositioning System (GPS), based on IP address, by using triangulationand/or proximity to network access points or other network components(e.g., cellular towers, WiFi access points, etc.), or other suitabletechniques. The position of the vehicle 200 can be used by varioussystems of the vehicle autonomy system 202.

Thus, the one or more sensors 201 can be used to collect sensor datathat includes information that describes the location (e.g., inthree-dimensional space relative to the vehicle 200) of points thatcorrespond to objects within the surrounding environment of the vehicle200. In some implementations, the sensors 201 can be located at variousdifferent locations on the vehicle 200. As an example, in someimplementations, one or more cameras and/or LIDAR sensors can be locatedin a pod or other structure that is mounted on a roof of the vehicle 200while one or more RADAR sensors can be located in or behind the frontand/or rear bumper(s) or body panel(s) of the vehicle 200. As anotherexample, camera(s) can be located at the front or rear bumper(s) of thevehicle 200. Other locations can be used as well.

The pose system 230 receives some or all of the sensor data from sensors201 and generates vehicle poses for the vehicle 200. A vehicle posedescribes a position and attitude of the vehicle. The position of thevehicle 200 is a point in a three dimensional space. In some examples,the position is described by values for a set of Cartesian coordinates,although any other suitable coordinate system may be used. The attitudeof the vehicle 200 generally describes the way in which the vehicle 200is oriented at its position. In some examples, attitude is described bya yaw about the vertical axis, a pitch about a first horizontal axis,and a roll about a second horizontal axis. In some examples, the posesystem 230 generates vehicle poses periodically (e.g., every second,every half second) The pose system appends time stamps to vehicle poses,where the time stamp for a pose indicates the point in time that isdescribed by the pose. The pose system 230 generates vehicle poses bycomparing sensor data to map data 226 describing the surroundingenvironment of the vehicle 200. The pose system 230, in some examples,comprises one or more localizers and a pose filter. Localizers generatepose estimates based on remote-sensing data. The pose filter generatesvehicle poses based on pose estimates generated by one or morelocalizers and on motion sensor data, for example, from an inertialmeasurement unit (IMU), odometers, or other encoders.

The perception system 203 detects objects in the surrounding environmentof the vehicle 200 based on sensor data, map data 226, and/or vehicleposes provided by the pose system 230. Map data 226, for example, mayprovide detailed information about the surrounding environment of thevehicle 200. The map data 226 can provide information regarding: anidentity and location of different roadways, segments of roadways,buildings, or other items or objects (e.g., lampposts, crosswalks,curbing); the location and directions of traffic lanes (e.g., thelocation and direction of a parking lane, a turning lane, a bicyclelane, or other lanes within a particular roadway); traffic control data(e.g., the location and instructions of signage, traffic lights, orother traffic control devices); and/or any other map data that providesinformation that assists the vehicle autonomy system 202 incomprehending and perceiving its surrounding environment and itsrelationship thereto. A roadway is a place where the vehicle can driveand may include, for example, a road, a street, a highway, a lane, aparking lot, or a driveway. The perception system 203 may utilizevehicle poses provided by the pose system 230 to place the vehicle 200within the map data and thereby predict which objects should be in thevehicle's surrounding environment.

In some examples, the perception system 203 determines state data forone or more of the objects in the surrounding environment of the vehicle200. State data describes a current state of an object (also referred toas features of the object). The state data for each object describes,for example, an estimate of the object's: current location (alsoreferred to as position); current speed (also referred to as velocity);acceleration; current heading; current orientation; size/shape/footprint(e.g., as represented by a bounding shape such as a bounding polygon orpolyhedron); type/class (e.g., vehicle versus pedestrian versus bicycleversus other); yaw rate; distance from the vehicle 200; minimum path tointeraction with the vehicle 200; minimum time duration to interactionwith the vehicle 200; and/or other state information.

In some implementations, the perception system 203 determines state datafor each object over a number of iterations. In particular, theperception system 203 updates the state data for each object at eachiteration. Thus, the perception system 203 detects and tracks objects,such as vehicles, that are proximate to the vehicle 200 over time.

The prediction system 204 is configured to predict one or more futurepositions for an object or objects in the environment surrounding thevehicle 200 (e.g., an object or objects detected by the perceptionsystem 203). The prediction system 204 can generate prediction dataassociated with one or more of the objects detected by the perceptionsystem 203. In some embodiments, the prediction system 204 generatesprediction data describing each of the respective objects detected bythe perspective system 204.

Prediction data for an object can be indicative of one or more predictedfuture locations of the object. For example, the prediction system 204may predict where the object will be located within the next 5 seconds,20 seconds, 200 seconds, and so forth. Prediction data for an object mayindicate a predicted trajectory (e.g., predicted path) for the objectwithin the surrounding environment of the vehicle 200. For example, thepredicted trajectory (e.g., path) can indicate a path along which therespective object is predicted to travel over time (and/or the speed atwhich the object is predicted to travel along the predicted path). Theprediction system 204 generates prediction data for an object, forexample, based on state data generated by the perception system 203. Insome examples, the prediction system 204 also considers one or morevehicle poses generated by the pose system 230 and/or map data 226.

In some examples, the prediction system 204 uses state data indicativeof an object type or classification to predict a trajectory for theobject. As an example, the prediction system 204 can use state dataprovided by the perception system 203 to determine that a particularobject (e.g., an object classified as a vehicle) approaching anintersection and maneuvering into a left-turn lane intends to turn left.In such a situation, the prediction system 204 can predict a trajectory(e.g., path) corresponding to a left-turn for the vehicle such that thevehicle turns left at the intersection. Similarly, the prediction system204 can determine predicted trajectories for other objects, such asbicycles, pedestrians, or parked vehicles. The prediction system 204 canprovide the predicted trajectories associated with the object(s) to themotion planning system 205.

In some implementations, the prediction system 204 is a goal-orientedprediction system 204 that generates one or more potential goals,selects one or more of the most likely potential goals, and develops oneor more trajectories by which the object can achieve the one or moreselected goals. For example, the prediction system 204 can include ascenario generation system that generates and/or scores the one or moregoals for an object and a scenario development system that determinesthe one or more trajectories by which the object can achieve the goals.In some implementations, the prediction system 204 can include amachine-learned goal-scoring model, a machine-learned trajectorydevelopment model, and/or other machine-learned models.

The motion planning system 205 determines a motion plan for the vehicle200 based at least in part on the predicted trajectories associated withthe objects within the surrounding environment of the vehicle, the statedata for the objects provided by the perception system 203, vehicleposes provided by the pose system 230, and/or map data 226. Stateddifferently, given information about the current locations of objectsand/or predicted trajectories of objects within the surroundingenvironment of the vehicle 200, the motion planning system 205 candetermine a motion plan for the vehicle 200 that best navigates thevehicle 200 relative to the objects at such locations and theirpredicted trajectories on acceptable roadways.

In some implementations, the motion planning system 205 can evaluate oneor more cost functions or one or more reward functions for each of oneor more candidate motion plans for the vehicle 200. For example, thecost function(s) can describe a cost (e.g., over time) of adhering to aparticular candidate motion plan while the reward function(s) candescribe a reward for adhering to the particular candidate motion plan.For example, the reward can be of opposite sign to the cost.

Thus, given information about the current locations and/or predictedfuture locations/trajectories of objects, the motion planning system 205can determine a total cost (e.g., a sum of the cost(s) and/or reward(s)provided by the cost function(s) and/or reward function(s)) of adheringto a particular candidate pathway. The motion planning system 205 canselect or determine a motion plan for the vehicle 200 based at least inpart on the cost function(s) and the reward function(s). For example,the motion plan that minimizes the total cost can be selected orotherwise determined. The motion plan can be, for example, a path alongwhich the vehicle 200 will travel in one or more forthcoming timeperiods. In some examples, the motion plan also includes a speed pathand/or an acceleration path for the vehicle 200. In someimplementations, the motion planning system 205 can be configured toiteratively update the motion plan for the vehicle 200 as new sensordata is obtained from one or more sensors 201. For example, as newsensor data is obtained from one or more sensors 201, the sensor datacan be analyzed by the perception system 203, the prediction system 204,and the motion planning system 205 to determine the motion plan.

Each of the perception system 203, the prediction system 204, the motionplanning system 205, and the pose system 230, can be included in orotherwise be a part of a vehicle autonomy system configured to determinea motion plan based at least in part on data obtained from one or moresensors 201. For example, data obtained by one or more sensors 201 canbe analyzed by each of the perception system 203, the prediction system204, and the motion planning system 205 in a consecutive fashion inorder to develop the motion plan. While FIG. 5 depicts elements suitablefor use in a vehicle autonomy system according to example aspects of thepresent disclosure, one of ordinary skill in the art will recognize thatother vehicle autonomy systems can be configured to determine a motionplan for an autonomous vehicle based on sensor data.

The motion planning system 205 can provide the motion plan to one ormore vehicle controllers 207 to execute the motion plan. For example,the one or more vehicle controllers 207 can include a throttlecontroller 234, a brake controller 220, a steering controller 232, andother controllers, each of which is in communication with one or morevehicle control interfaces to control the motion of the vehicle 200.

The brake controller 220 is configured to receive all or part of themotion plan and generate a braking command that applies (or does notapply) the vehicle brakes. For example, the brake controller 220 sends acommand to a braking interface. In some examples, the brake controller220 includes a primary system and a secondary system. The primary systemreceives braking commands and, in response, brakes the vehicle 200. Thesecondary system may be configured to determine a failure of the primarysystem to brake the vehicle 200 in response to receiving the brakingcommand.

The steering controller 232 is configured to receive all or part of themotion plan and generate a steering command. The steering command isprovided to a steering interface, to provide a steering input to steerthe vehicle 200.

A lighting/auxiliary controller 236 receives a lighting or auxiliarycommand. In response, the lighting/auxiliary controller 236 controls alighting and/or auxiliary system of the vehicle 200. Controlling alighting system may include, for example, turning on, turning off, orotherwise modulating headlights, parking lights, running lights, etc.Controlling an auxiliary system may include, for example, modulatingwindshield wipers, a defroster, etc. A throttle controller 234 isconfigured to receive all or part of the motion plan and generate athrottle command. The throttle command is provided to a throttleinterface to control the engine or other propulsion system of thevehicle 200.

The vehicle autonomy system 202 includes one or more computing devices,such as the computing device 211, which may implement all or parts ofthe perception system 203, the prediction system 204, the motionplanning system 205, and/or the pose system 230. The example computingdevice 211 can include one or more processors 212 and one or more memorydevices (collectively referred to as memory) 214. The one or moreprocessors 212 can be any suitable processing device (e.g., a processorcore, a microprocessor, an Application Specific Integrated Circuit(ASIC), a Field Programmable Gate Array (FPGA), a microcontroller) andcan be one processor or a plurality of processors that are operativelyconnected. The memory 214 can include one or more non-transitorycomputer-readable storage mediums, such as Random Access Memory (RAM),Read Only Memory (ROM), Electrically Erasable Programmable Read OnlyMemory (EEPROM), Erasable Programmable Read Only Memory (EPROM), flashmemory devices, magnetic disks, and combinations thereof. The memory 214can store data 216 and instructions 218 which can be executed by theprocessor 212 to cause the vehicle autonomy system 202 to performoperations. The one or more computing devices 211 can also include acommunication interface 219, which allows the one or more computingdevices 211 to communicate with other components of the vehicle 200 orexternal computing systems, such as via one or more wired or wirelessnetworks. Additional descriptions of hardware and softwareconfigurations for computing devices, such as the computing device(s)211 are provided herein at FIGS. 9 and 10 .

FIG. 6 is a diagram showing one example of a brake system 300 that maybe used in an AV, such as the vehicle 102 of FIG. 1 or 200 of FIG. 5 .The brake system 300 is an air brake system, such as may be used in atruck, tractor-trailer, or any other suitable vehicle.

The brake system 300 includes a compressor 302 that is powered by anengine of the vehicle. The compressor 302 provides pressurized air to apressurized air reservoir 301. In the example of FIG. 6 , thepressurized air reservoir includes a wet reservoir 320, a primaryreservoir 322, and a secondary reservoir 324. For example, thecompressor 302 is in fluid communication with the wet reservoir 320 toprovide pressurized air to the wet reservoir 320. The wet reservoir 320is in fluid communication with the primary reservoir 322 and thesecondary reservoir 324. The primary and secondary reservoirs 322, 324are used, respectively, to provide pressurized air to front foundationbrakes 308A, 308B (secondary reservoir 324) and the rear foundationbrakes 308C, 308D (primary reservoir 322). In some examples, the brakesystem 300 includes various other components related to the pressurizedair reservoir 301, such as, for example, a governor for regulating theair pressure in the pressurized air reservoir 301, an air dryer forremoving moisture from air, or various other reservoirs.

Pressurized air from the pressurized air reservoir 301 is used toselectively provide pressurized air to service brake chambers 309A,309B, 309C, 309D, causing the brake chambers 309A, 309B, 309C, 309D, toengage or disengage the foundation brakes 308A, 308B, 308C, 308D.Foundation brakes 308A, 308B, 308C, 308D include mechanisms positioned,for example, at the wheels or axles of the vehicle to slow or stop thewheels of the vehicle in response to the pressurized air. Any suitabletype of foundation brake may be used including, for example, drum brakemechanisms, disc brake mechanisms, air over hydraulic brake mechanisms,or wedge brake mechanisms.

The pressurized air reservoir 301 is in fluid communication with a pedalvalve 306 and with service brake valve 318. In some examples, the pedalvalve 306 is referred to as a treadle valve. Pressurized air (or anothersuitable fluid) flows between the pedal valve 306 and the service brakevalve 318. The pedal valve 306 may include and/or be used with a brakepedal that is controlled by the human user to apply and/or release thebrakes. The service brake valve 318 responds to service brake commandsfrom a vehicle autonomy system, such as vehicle autonomy system 106 or220, to apply and/or release the service brakes by allowing orpreventing the flow of pressurized air from the pressurized airreservoir 301 to the service brake chambers 309A, 309B, 309C, 309D. Theservice brake command indicates a level of braking called for by thevehicle autonomy system. In response to the service brake command, abrake controller modulates the state of the service brake valve 318, forexample, by moving the service brake valve 318 from its current state toa more open position, moving the service brake valve 318 from itscurrent state to a more closed position, leaving the service brake valve318 in its current state, and so forth. This regulates the pressurepassed by the service brake valve 318.

In some examples, the service brake valve 318 includes anelectro-mechanical device or other suitable device for opening andclosing the service brake valve 318 in response to an electrical orother suitable signal originating from the vehicle autonomy system. Forexample, the service brake valve 318 may include a solenoid that opensand/or closes the service brake valve 318. The vehicle autonomy system(e.g., via a brake controller) provides an electrical signal (e.g., acurrent) to the electro-mechanical device to modulate the service brakevalve 318. Modulating the service brake valve 318 includes opening theservice brake valve 318, closing the service brake valve 318,maintaining the current state of the service brake valve 318, and soforth. Also, in some examples, the service brake valve 318 includes acontrol circuit that is configured to execute a series of changes in thestate of the service brake 318 in response to a single service brakecommand.

In the example of FIG. 6 , the pedal valve 306 and service brake valve318 modulate a primary service brake line and a secondary service brakeline. The primary service brake line provides pressurized air from theprimary reservoir 322 to the service brake chambers 309C, 309D. Thesecondary service brake line provides pressurized air from the secondaryreservoir 324 to the service brake chambers 309A, 309B. The pedal valve306 and service brake valve 318 may modulate both the primary andsecondary service brake lines together at the same rate or at differentrates.

The service brake valve 318 and pedal valve are in fluid communicationwith respective shuttle valves 314S, 314P. A primary shuttle valve 314Pis positioned between the pedal valve 306 and service brake valve 318 onone side and the service brake chambers 309C, 309D on the other side.The secondary shuttle valve 314S is positioned between the pedal valve306 and service brake valve 318 on one side and the service brakechambers 309A, 309B on the other side.

Pressurized air controlled by the pedal valve 306 and/or the servicebrake valve 318 is provided to the shuttle valves 314P, 314S. Theshuttle valves 314S, 314P each comprise a first input to receivepressurized air from the pedal valve 306 and a second input to receivepressurized air from the service brake valve 318. An output of theshuttle valve 314P is in fluid communication with the service brakechambers 309C, 309D. An output of the shuttle valve 315S is in fluidcommunication with the service brake chambers 309A, 309B. One or morequick release valves 310, 312 and/or other components, may be positionedbetween the shuttle valves 314P, 314S and the respective service brakechambers 309A, 309B, 309C, 309D. Optional pressure sensors 334 a and 334may be positioned between the

The shuttle valves 314P, 314S are configured to provide, at theirrespective outputs, the highest pressure provided at one of the inputs.For example, if the highest pressure is provided from the pedal valve306 (indicating that the human user is calling for harder braking thanvehicle autonomy system), then the shuttle valves 314P, 314S provide thepressure from the pedal valve 306 to the service brake chambers 309A,309B, 309C, 309D. On the other hand, if the highest pressure is providedfrom the service brake valve 318 (indicating that the vehicle autonomysystem is calling for harder braking than the human user), then theshuttle valves 314S, 314P provide the pressure provided from the servicebrake valve 318 and the pedal valve 306 to the service brake chambers309A, 309B, 309C, 309D.

The service brake lines 340 a and 340 b may be equipped with one or morepressure sensor(s) 334 a and 334 b respectively, and a trailer take-offline 336. The pressure sensor(s) 334 a and 334 b may be used, asdescribed herein, to generate a pressure signal. The pressure signal maybe used, for example, by the vehicle autonomy system to determine apressure within the braking system 108 to facilitate a properpre-loading of the braking system under certain conditions. The trailertake-off 336 may be connected to one or more service brakes of atrailer, for example, allowing service brakes of the trailer and tractorto be engaged and disengaged together.

FIG. 7 is a flowchart of an example method for pre-loading the brakingsystem 108. In some aspects, one or more of the functions discussedbelow with respect to FIG. 7 may be performed by hardware processingcircuitry. For example, hardware processing circuitry included in thevehicle autonomy system 106 may be configured to perform one or more ofthe functions discussed below. As one example, instructions 218 mayconfigure the processors 212 to perform one or more of the functionsdiscussed below with respect to FIG. 7 .

In operation 720, an image is captured with a first sensor. In someaspects for example, an image may be captured with the sensor(s) 107,discussed above with respect to FIG. 1 . In some aspects, multipleimages may be captured by multiple sensors or even a single sensor inoperation 720, with the resulting images stitched together or integratedinto a single image.

In operation 730, an object is identified in the image. As discussedabove, the perception system 203 may in some aspects, identify objectswithin an image captured by the sensor 107. The perception system 203may use one or more of a variety of object detection algorithms toidentify the object. For example, feature based object recognitionmethods, such as scale invariant feature transform(SIFT) or speeded uprobust features (SURF) may be implemented in various embodiments.

In some aspects, the perception system 203 may determine a set ofprobabilities, with each probability indicating a probability of whethera detected object in the image is a particular type of object within acorresponding set of object types. The object types included in the setof object types may include, for example, one or more of a pedestrianobject type, vehicle object type, dog object type, plastic bag objecttype, bicyclist object type, motorcyclist object type, traffic policeobject type, traffic sign object type, or many other possible objecttypes. In some aspects, these probabilities may be expressed as afloating point number between zero (0) and one (1) and/or equal to zero(0) or one (1).

An accuracy of the identification may, in some aspects, relate to theset of probabilities. For example, in some aspects, an accuracy mayrepresent a highest probability in the set of probabilities. In someaspects, the accuracy may relate to an amount of data used to identifythe object. For example, in some aspects, the accuracy of identificationmay be proportional to a number of images in which the object isdetected. In some embodiments, if the object is detected in only asingle image, there may be a substantial probability that the object iscaused by noise, or results from another transient imaging artifact. Insome embodiments, operation 730 may include multiple imaging sweeps of ascene including the object. The multiple imaging sweeps may include datacollected from one or more different sensors. As each data obtained fromeach sweep is analyzed by the perception system 203, an accuracy of anobject's identification may increase. Detecting the object in multipleimages may reduce the probability that the detected object is noise andthus increase its identification accuracy.

In some aspects, the accuracy may relate both to a number of images usedto recognize a particular object and the probabilities. For example, insome aspects, an accuracy of an identification of an object may be basedon equation 1 below:A _(i)=num_sweeps/K*(max(Pi _(1 . . . n))where:

-   -   A_(i) is an accuracy of an identification of an object in an        image i,    -   K is a constant value,    -   num_sweeps is a number of images where the object was        identified,    -   max (Pi) is a maximum probability within the set of        probabilities the object is any one of a set of objects 1 . . .        n, where the probability is determined based on the image i (as        discussed above).

In some aspects, the identification of the object in operation 730 maybe performed by an image processing neural network, such as a trainedconvolutional neutral network (CNN). The neural network may generate theprobabilities discussed above when provided with one or more images.

In operation 740, a braking system of an autonomous vehicle ispre-loaded in response to the accuracy of the identification inoperation 730 meeting one or more criterion. The one or more criterionmay vary by embodiment. In some embodiments, one criterion may relate towhether the accuracy of the identification is above a threshold. In someaspects, different thresholds may be applied for different types ofobjects. For example, the criterion may be met if an object isrecognized as a first type of object (e.g. pedestrian) with a firstprobability threshold or if the object is recognized as a second type ofobject (e.g. dog), with a second probability threshold.

Thus, if the object is not adequately identified in operation 720,application of the braking system so as to apply a force against motionof a vehicle may be inappropriate. At the same time, the predictionsystem 204 may indicate that the object is predicted to be within a pathof the autonomous vehicle. Thus, pre-loading of the braking system mayallow the AV to prepare to take action to avoid a collision with theobject, while also allowing the perception system with additional timeto improve the accuracy of the object identification.

In some aspects, one of the one or more criterion may relate to adistance between the object and the AV. The pre-loading may then bebased on these criterion. For example, if the object is further from theautonomous vehicle than a threshold distance, no pre-loading may beperformed. In some aspects, the threshold distance may be based on acurrent speed of the AV. In some aspects, a table mapping speeds tothreshold distances may be maintained, and the table consulted todetermine the threshold distance. Alternatively, the threshold distancemay be based on a formula in some aspects that receives the vehicle'scurrent speed as a parameter. In some aspects, ambient temperature, roadconditions and/or vehicle weight may also effect the threshold distance.

In some aspects, one or more of the one or more criterion may relate toa predicted path of the object. As discussed above, the predictionsystem 204 may predict future locations of objects. Thus, a particularobject may be recognized with a relatively high degree of accuracy, butmay currently be located outside a predicted path of the vehicle.However, the prediction system may predict, with a particular confidencelevel, that the object will move into the path of the vehicle andtherefore represents a threat to safe vehicle operation. Thus, in someaspects, a pre-loading of the braking situation may be based on thesecriterion. In other words, recognition of the object may be able abraking system application threshold in addition to the pre-loadthreshold, but since the object is not currently within the path of thevehicle, the brakes are not applied. However, because the predicted pathof the object is within the path of the vehicle, the pre-loading of thebraking system is initiated. Thus, some embodiments may implement twopre-load threshold. A first pre-load threshold for recognition accuracyfor objects currently within a predicted path of the vehicle. A secondpre-load threshold applied to a prediction accuracy level that theobject will move into the path of the vehicle, or occupy a location alsooccupied by the vehicle at the same time.

One or more of these example conditions may be combined in variousembodiments.

In operation 750, a second image is captured with the first sensor(e.g., sensor 107). In some other aspects, the second image may becaptured with a second, different sensor than was used to capture thefirst image.

In operation 755, the object is further identified based on the secondimage. The further identification has a second level of accuracy. Insome aspects, the second level of accuracy may be based on use of boththe first image and the second image to identify the object. Forexample, as discussed above, in some aspects, the accuracy of anidentification may be based at least in part, on a number of images usedto perform the identification. Generally, as the number of images usedincreases, the recognition accuracy also increases. An increase inobject recognition accuracy may increase of decrease a probability ofpre-loading of a braking system. For example, a probability that anobject is a pedestrian may decrease as more images are captured when aprobability that the object is a paper bag may increase as the moreimages are captured.

In some embodiments, operation 755 updates the set of probabilitiesdiscussed above with respect to operation 730. Some probabilitiesdetermined in operation 730 may decrease when updated in operation 755.For example, in some aspects, a resolution or clarity of the object mayimprove in the second image relative to the first image. This increasedclarity may reduce probabilities that the object is a particular type ofone or more objects, and increase one or more probabilities that theobject is one or more other particular types of objects. Operation 755may rely on the same object recognition methods to perform the furtheridentification as were used in operation 730 to perform the initial orfirst identification of process 700.

In operation 760, the brakes of the AV are applied based on a secondaccuracy of the further identification. The brakes are applied to slowor stop the AV. In embodiments that utilize a fluid-based braking system(e.g. air or oil), application of the brakes in operation 760 mayinclude increasing a pressure of the braking system beyond anapplication pressure (e.g. 160), such that more than a de minimisbraking force is applied against a momentum of the AV.

In aspects utilizing a non-air based braking system, applying the brakesmay include increasing friction between two braking surfaces of the AVso as to slow the AV. The friction may be increased by application ofpressure against one of the braking surfaces such that it presses(further) against the other braking surface. These embodiments may alsomonitor the braking application via one or more of electrical resistancebetween the two braking systems, a change in velocity of the autonomousvehicle, or a period of time during which a force is applied to at leastone of the braking surfaces against another braking surface. In someaspects, application of the brakes in operation 760 may causeapplication of a brake command as discussed below with respect to FIG. 9and operation 905.

Some aspects of process 700 may remove the braking system from apre-loaded condition under certain conditions. For example, if arecognition accuracy of the object identified in operation 730 dropsbelow a defined threshold, the braking system may be returned to aquiescent or unloaded condition. Alternatively, if a defined period oftime passes, or if the vehicle travels a threshold distance without thebrakes being applied, the braking system may be returned to a quiescentstate.

FIG. 8 is a flowchart of an example process for pre-loading a brakingsystem. The process 800 discussed below with respect to FIG. 8 isintended to describe one example method of pre-loading an air-basedbraking system. Other embodiments may not utilize an air-brake brakingsystem and thus may deviate at least to an extent, from some of thespecific example operations discussed below.

In some aspects, one or more of the functions discussed below withrespect to FIG. 8 may be performed by hardware processing circuitry. Forexample, hardware processing circuitry included in the vehicle autonomysystem 106 may be configured to perform one or more of the functionsdiscussed below. As one example, instructions 218 may configure theprocessors 212 to perform one or more of the functions discussed belowwith respect to FIG. 8 .

In operation 810, a service brake valve is opened. For example, in someaspects, operation 810 may open the service brake valve 318, discussedabove with respect to FIG. 6 . Opening the valve may allow pressure toflow from a pressure reservoir (e.g., 322, 324) or compressor (e.g.,302) to one or more service brake chambers (e.g. 311 a-d).

In operation 820, a pressure is read from a service brake pressuresensor (e.g. 334 a or 334 b). The service brake pressure sensor mayallow for determination of a pressure within at least a portion of aservice braking system (e.g. 108). Decision block 830 determines whetherthe pressure has reached a brake pre-load threshold level. The brakepre-load threshold level may be a level below the application pressure160, discussed above with respect to FIG. 2A. In some aspects, thebrake-pre-load threshold level may be within the pre-loaded state 158illustrated above with respect to FIG. 2A. If the pressure has notreached the pre-load level, process 800 returns to operation 820,otherwise, the service brake valve is closed in operation 840 tostabilize the braking system at the pre-load threshold level.Stabilizing the braking system may include periodically (or as needed)adding or venting of fluid or mechanical pressure to maintain thepressure within a pre-load range.

FIG. 9 is a flowchart of an example process for applying brakes in anautonomous vehicle. The process 900 discussed below with respect to FIG.8 is intended to describe one example method of pre-loading an air-basedbraking system. Other embodiments may not utilize an air-brake brakingsystem and thus may deviate at least to an extent, from some of thespecific example operations discussed below.

In some aspects, one or more of the functions discussed below withrespect to FIG. 9 may be performed by hardware processing circuitry. Forexample, hardware processing circuitry included in the vehicle autonomysystem 106 may be configured to perform one or more of the functionsdiscussed below with respect to FIG. 9 . As one example, instructions218 may configure the processors 212 to perform one or more of thefunctions discussed below with respect to FIG. 9 .

In operation 905, a brake command is received. The brake commandindicates that brakes should be applied, and also indicates a brakingforce indicator. In operation 910, a service brake valve is opened (e.g.318). Opening the service brake valve allows one or more service brakechambers to be pressurized (further) via a pressure reservoir (e.g. 322,324) and/or a compressor (e.g. 302).

In operation 920, a pressure is read from a service brake pressuresensor (e.g. 334 a or 334 b). Decision operation 930 determines whethera pressure within the service brake system 108 has reached a levelcorresponding to the braking force indicator. For example, decisionoperation 930 may determine whether the braking system pressure fallswithin an appropriate range of region 162, discussed above with respectto FIG. 2A, given the braking force indication received in operation905. If the pressure has not reached the appropriate level, process 900returns to operation 920, otherwise, the service brake valve (e.g. 318)is closed in operation 940 to stabilize the pressure in the brakingsystem at the appropriate level for the braking force indicator.

FIG. 10 is a block diagram 1000 showing one example of a softwarearchitecture 1002 for a computing device. The software architecture 1002may be used in conjunction with various hardware architectures, forexample, as described herein. FIG. 10 is merely a non-limiting exampleof a software architecture 1002 and many other architectures may beimplemented to facilitate the functionality described herein. Arepresentative hardware layer 1004 is illustrated and can represent, forexample, any of the above-referenced computing devices. In someexamples, the hardware layer 1004 may be implemented according to anarchitecture 1002 of FIG. 10 and/or the architecture 1100 of FIG. 11 .

The representative hardware layer 1004 comprises one or more processingunits 1006 having associated executable instructions 1008. Theexecutable instructions 1008 represent the executable instructions ofthe software architecture 1002, including implementation of the methods,modules, components, and so forth of FIGS. 1-9 . The hardware layer 1004also includes memory and/or storage modules 1010, which also have theexecutable instructions 1008. The hardware layer 1004 may also compriseother hardware 1012, which represents any other hardware of the hardwarelayer 1004, such as the other hardware illustrated as part of thearchitecture 1000.

In the example architecture of FIG. 10 , the software architecture 1002may be conceptualized as a stack of layers where each layer providesparticular functionality. For example, the software architecture 1002may include layers such as an operating system 1014, libraries 1016,frameworks/middleware 1018, applications 1020, and a presentation layer1044. Operationally, the applications 1020 and/or other componentswithin the layers may invoke API calls 1024 through the software stackand receive a response, returned values, and so forth illustrated asmessages 1026 in response to the API calls 1024. The layers illustratedare representative in nature and not all software architectures have alllayers. For example, some mobile or special-purpose operating systemsmay not provide a frameworks/middleware 1018 layer, while others mayprovide such a layer. Other software architectures may includeadditional or different layers.

The operating system 1014 may manage hardware resources and providecommon services. The operating system 1014 may include, for example, akernel 1028, services 1030, and drivers 1032. The kernel 1028 may act asan abstraction layer between the hardware and the other software layers.For example, the kernel 1028 may be responsible for memory management,processor management (e.g., scheduling), component management,networking, security settings, and so on. The services 1030 may provideother common services for the other software layers. In some examples,the services 1030 include an interrupt service. The interrupt servicemay detect the receipt of a hardware or software interrupt and, inresponse, cause the software architecture 1002 to pause its currentprocessing and execute an ISR when an interrupt is received. The ISR maygenerate an alert.

The drivers 1032 may be responsible for controlling or interfacing withthe underlying hardware. For instance, the drivers 1032 may includedisplay drivers, camera drivers, Bluetooth® drivers, flash memorydrivers, serial communication drivers (e.g., Universal Serial Bus (USB)drivers), Wi-Fi® drivers, NFC drivers, audio drivers, power managementdrivers, and so forth depending on the hardware configuration.

The libraries 1016 may provide a common infrastructure that may be usedby the applications 1020 and/or other components and/or layers. Thelibraries 1016 typically provide functionality that allows othersoftware modules to perform tasks in an easier fashion than byinterfacing directly with the underlying operating system 1014functionality (e.g., kernel 1028, services 1030, and/or drivers 1032).The libraries 1016 may include system libraries 1034 (e.g., C standardlibrary) that may provide functions such as memory allocation functions,string manipulation functions, mathematic functions, and the like. Inaddition, the libraries 1016 may include API libraries 1036 such asmedia libraries (e.g., libraries to support presentation andmanipulation of various media formats such as MPEG4, H.264, MP3, AAC,AMR, JPG, and PNG), graphics libraries (e.g., an OpenGL framework thatmay be used to render 2D and 3D graphic content on a display), databaselibraries (e.g., SQLite that may provide various relational databasefunctions), web libraries (e.g., WebKit that may provide web browsingfunctionality), and the like. The libraries 1016 may also include a widevariety of other libraries 1038 to provide many other APIs to theapplications 1020 and other software components/modules.

The frameworks 1018 (also sometimes referred to as middleware) mayprovide a higher-level common infrastructure that may be used by theapplications 1020 and/or other software components/modules. For example,the frameworks 1018 may provide various graphical user interface (GUI)functions, high-level resource management, high-level location services,and so forth. The frameworks 1018 may provide a broad spectrum of otherAPIs that may be used by the applications 1020 and/or other softwarecomponents/modules, some of which may be specific to a particularoperating system or platform.

The applications 1020 include built-in applications 1040 and/orthird-party applications 1042. Examples of representative built-inapplications 1040 may include, but are not limited to, a contactsapplication, a browser application, a book reader application, alocation application, a media application, a messaging application,and/or a game application. The third-party applications 1042 may includeany of the built-in applications 1040 as well as a broad assortment ofother applications. In a specific example, the third-party application1042 (e.g., an application developed using the Android™ or iOS™ softwaredevelopment kit (SDK) by an entity other than the vendor of theparticular platform) may be mobile software running on a mobileoperating system such as iOS™, Android™, Windows® Phone, or othercomputing device operating systems. In this example, the third-partyapplication 1042 may invoke the API calls 1024 provided by the mobileoperating system such as the operating system 1014 to facilitatefunctionality described herein.

The applications 1020 may use built-in operating system functions (e.g.,kernel 1028, services 1030, and/or drivers 1032), libraries (e.g.,system libraries 1034, API libraries 1036, and other libraries 1038), orframeworks/middleware 1018 to create user interfaces to interact withusers of the system. Alternatively, or additionally, in some systems,interactions with a user may occur through a presentation layer, such asthe presentation layer 1044. In these systems, the application/module“logic” can be separated from the aspects of the application/module thatinteract with a user.

Some software architectures use virtual machines. For example, systemsdescribed herein may be executed using one or more virtual machinesexecuted at one or more server computing machines. In the example ofFIG. 10 , this is illustrated by a virtual machine 1048. A virtualmachine creates a software environment where applications/modules canexecute as if they were executing on a hardware computing device. Thevirtual machine 1048 is hosted by a host operating system (e.g., theoperating system 1014) and typically, although not always, has a virtualmachine monitor 1046, which manages the operation of the virtual machine1048 as well as the interface with the host operating system (e.g., theoperating system 1014). A software architecture executes within thevirtual machine 1048, such as an operating system 1050, libraries 1052,frameworks/middleware 1054, applications 1056, and/or a presentationlayer 1058. These layers of software architecture executing within thevirtual machine 1048 can be the same as corresponding layers previouslydescribed or may be different.

FIG. 11 is a block diagram illustrating a computing device hardwarearchitecture 1100, within which a set or sequence of instructions can beexecuted to cause a machine to perform examples of any one of themethodologies discussed herein. The architecture 1100 may describe, acomputing device for executing the vehicle autonomy system,localizer(s), and/or pose filter described herein.

The architecture 1100 may operate as a standalone device or may beconnected (e.g., networked) to other machines. In a networkeddeployment, the architecture 1100 may operate in the capacity of eithera server or a client machine in server-client network environments, orit may act as a peer machine in peer-to-peer (or distributed) networkenvironments. The architecture 1100 can be implemented in a personalcomputer (PC), a tablet PC, a hybrid tablet, a set-top box (STB), apersonal digital assistant (PDA), a mobile telephone, a web appliance, anetwork router, a network switch, a network bridge, or any machinecapable of executing instructions (sequential or otherwise) that specifyoperations to be taken by that machine.

The example architecture 1100 includes a processor unit 1102 comprisingat least one processor (e.g., a central processing unit (CPU), agraphics processing unit (GPU), or both, processor cores, compute nodes,etc.). The architecture 1100 may further comprise a main memory 1104 anda static memory 1106, which communicate with each other via a link 1108(e.g., bus). The architecture 1100 can further include a video displayunit 1110, an input device 1112 (e.g., a keyboard), and a UI navigationdevice 1114 (e.g., a mouse). In some examples, the video display unit1110, input device 1112, and UI navigation device 1114 are incorporatedinto a touchscreen display. The architecture 1100 may additionallyinclude a storage device 1116 (e.g., a drive unit), a signal generationdevice 1118 (e.g., a speaker), a network interface device 1120, and oneor more sensors (not shown), such as a Global Positioning System (GPS)sensor, compass, accelerometer, or other sensor.

In some examples, the processor unit 1102 or another suitable hardwarecomponent may support a hardware interrupt. In response to a hardwareinterrupt, the processor unit 1102 may pause its processing and executean ISR, for example, as described herein.

The storage device 1116 includes a machine-readable medium 1122 on whichis stored one or more sets of data structures and instructions 1124(e.g., software) embodying or used by any one or more of themethodologies or functions described herein. The instructions 1124 canalso reside, completely or at least partially, within the main memory1104, within the static memory 1106, and/or within the processor unit1102 during execution thereof by the architecture 1100, with the mainmemory 1104, the static memory 1106, and the processor unit 1102 alsoconstituting machine-readable media.

Executable Instructions and Machine-Storage Medium

The various memories (i.e., 1104, 1106, and/or memory of the processorunit(s) 1102) and/or storage device 1116 may store one or more sets ofinstructions and data structures (e.g., instructions) 1124 embodying orused by any one or more of the methodologies or functions describedherein. These instructions, when executed by processor unit(s) 1102cause various operations to implement the disclosed examples.

As used herein, the terms “machine-storage medium,” “device-storagemedium,” “computer-storage medium” (referred to collectively as“machine-storage medium 1122”) mean the same thing and may be usedinterchangeably in this disclosure. The terms refer to a single ormultiple storage devices and/or media (e.g., a centralized ordistributed database, and/or associated caches and servers) that storeexecutable instructions and/or data, as well as cloud-based storagesystems or storage networks that include multiple storage apparatus ordevices. The terms shall accordingly be taken to include, but not belimited to, solid-state memories, and optical and magnetic media,including memory internal or external to processors. Specific examplesof machine-storage media, computer-storage media, and/or device-storagemedia 1122 include non-volatile memory, including by way of examplesemiconductor memory devices, e.g., erasable programmable read-onlymemory (EPROM), electrically erasable programmable read-only memory(EEPROM), FPGA, and flash memory devices; magnetic disks such asinternal hard disks and removable disks; magneto-optical disks; andCD-ROM and DVD-ROM disks. The terms machine-storage media,computer-storage media, and device-storage media 1122 specificallyexclude carrier waves, modulated data signals, and other such media, atleast some of which are covered under the term “signal medium” discussedbelow.

Signal Medium

The term “signal medium” or “transmission medium” shall be taken toinclude any form of modulated data signal, carrier wave, and so forth.The term “modulated data signal” means a signal that has one or more ofits characteristics set or changed in such a matter as to encodeinformation in the signal.

Computer Readable Medium

The terms “machine-readable medium,” “computer-readable medium” and“device-readable medium” mean the same thing and may be usedinterchangeably in this disclosure. The terms are defined to includeboth machine-storage media and signal media. Thus, the terms includeboth storage devices/media and carrier waves/modulated data signals.

The instructions 1124 can further be transmitted or received over acommunications network 1126 using a transmission medium via the networkinterface device 1120 using any one of a number of well-known transferprotocols (e.g., HTTP). Examples of communication networks include aLAN, a WAN, the Internet, mobile telephone networks, plain old telephoneservice (POTS) networks, and wireless data networks (e.g., Wi-Fi, 3G,and 11G LTE/LTE-A or WiMAX networks). The term “transmission medium”shall be taken to include any intangible medium that is capable ofstoring, encoding, or carrying instructions for execution by themachine, and includes digital or analog communications signals or otherintangible media to facilitate communication of such software.

Throughout this specification, plural instances may implementcomponents, operations, or structures described as a single instance.Although individual operations of one or more methods are illustratedand described as separate operations, one or more of the individualoperations may be performed concurrently, and nothing requires that theoperations be performed in the order illustrated. Structures andfunctionality presented as separate components in example configurationsmay be implemented as a combined structure or component. Similarly,structures and functionality presented as a single component may beimplemented as separate components. These and other variations,modifications, additions, and improvements fall within the scope of thesubject matter herein.

Various components are described in the present disclosure as beingconfigured in a particular way. A component may be configured in anysuitable manner. For example, a component that is or that includes acomputing device may be configured with suitable software instructionsthat program the computing device. A component may also be configured byvirtue of its hardware arrangement or in any other suitable manner.

The above description is intended to be illustrative, and notrestrictive. For example, the above-described examples (or one or moreaspects thereof) can be used in combination with others. Other examplescan be used, such as by one of ordinary skill in the art upon reviewingthe above description. The Abstract is to allow the reader to quicklyascertain the nature of the technical disclosure, for example, to complywith 37 C.F.R. § 1.72(b) in the United States of America. It issubmitted with the understanding that it will not be used to interpretor limit the scope or meaning of the claims.

Example 1 is an apparatus, comprising: hardware processing circuitry; ahardware memory storing instructions that, when executed, configure thehardware processing circuitry to perform operations comprising:capturing a first image via a sensor; identifying an object in the firstimage; and in response to an accuracy of the identification meeting afirst criterion, pre-loading a braking system of an autonomous vehicle.

In Example 2, the subject matter of Example 1 optionally includes theoperations further comprising: capturing a second image with the sensor;further identifying the object in the second image; and in response toan accuracy of the further identification meeting a second criterion,applying brakes via the pre-loaded braking system.

In Example 3, the subject matter of any one or more of Examples 1-2optionally include the braking system, the braking system comprising: apressurized air reservoir; a service brake chamber in fluidcommunication with the pressurized air reservoir via a service brakeline; and a service brake valve on the service brake line to control aflow of pressurized air from the pressurized air reservoir to theservice brake chamber to selectively engage or disengage a servicebrake, wherein the pre-loading of the braking system places the servicebrake valve in an open position so as to route pressurized air from thepressurized air reservoir to the service brake chamber.

In Example 4, the subject matter of Example 3 optionally includes apressure sensor in fluid communication with the service brake chamber,wherein the pre-loading of the braking system reads a pressuremeasurement from the pressure sensor and maintains the service brakevalve in the open position until the pressure measurement indicates apressure above a first threshold.

In Example 5, the subject matter of any one or more of Examples 1-4optionally include the operations further comprising releasing thepre-load of the braking system in response to the accuracy of thefurther identification meeting a second criterion.

In Example 6, the subject matter of any one or more of Examples 1-5optionally include wherein the accuracy of the identification does notmeet the first criterion if the identification of the object is based onless than a predefined number of images.

In Example 7, the subject matter of any one or more of Examples 1-6optionally include providing the first image to a trained model togenerate a set of probabilities that the object is each of acorresponding set of object types, wherein the accuracy of theidentification does not meet the first criterion if none of theprobabilities in the set of probabilities is above a threshold.

In Example 8, the subject matter of Example 7 optionally includeswherein the accuracy of the identification meets the first criterion ifat least one of the probabilities in the set of probabilities is abovethe threshold.

In Example 9, the subject matter of any one or more of Examples 1-8optionally include an imaging sensor, wherein the sensor is the imagingsensor.

In Example 10, the subject matter of any one or more of Examples 1-9optionally include a ranging sensor, wherein the sensor is the rangingsensor.

In Example 11, the subject matter of any one or more of Examples 1-10optionally include the operations further comprising capturing a thirdimage and fusing the third image with the first image, wherein theidentification of the object is based on the fused third and firstimages.

In Example 12, the subject matter of any one or more of Examples 1-11optionally include wherein pre-loading the braking system of theautonomous vehicle comprises one or more of monitoring an air pressurewithin a braking chamber of the braking system, monitoring a resistancebetween at least two braking surfaces of the braking system, monitoringa velocity of the autonomous vehicle, or activating the braking systemfor a defined time limit, the defined time limit insufficient to cause abraking force against motion of the autonomous vehicle.

In Example 13, the subject matter of any one or more of Examples 1-12optionally include an autonomous vehicle.

Example 14 is a method, comprising: capturing a first image via animaging sensor; identifying an object in the first image; and inresponse to an accuracy of the identification meeting a first criterion,pre-loading a braking system of an autonomous vehicle.

In Example 15, the subject matter of any one or more of Examples 13-14optionally include capturing a second image with the sensor; furtheridentifying the object in the second image; and in response to anaccuracy of the further identification meeting a second criterion,applying brakes via the pre-loaded braking system.

In Example 16, the subject matter of any one or more of Examples 14-15optionally include releasing the pre-load of the braking system inresponse to the accuracy of the further identification meeting a secondcriterion.

In Example 17, the subject matter of any one or more of Examples 14-16optionally include wherein the accuracy of the identification does notmeet the first criterion if the identification of the object is based onless than a predefined number of images.

In Example 18, the subject matter of any one or more of Examples 14-17optionally include providing the first image to a trained model togenerate a set of probabilities that the object is each of acorresponding set of object types, wherein the accuracy of theidentification does not meet the first criterion if none of theprobabilities in the set of probabilities is above a threshold.

In Example 19, the subject matter of any one or more of Examples 14-18optionally include predicting a path of the autonomous vehicle;predicting a path of the object; and determining a probability that thepath of the object intersects with the path of the autonomous vehicle,wherein the pre-loading of the braking system is further based on theprobability.

In Example 20, the subject matter of Example 19 optionally includespredicting if a position of the autonomous vehicle will overlap with aposition of the object at a particular time, wherein the pre-loading ofthe braking system is further based on the prediction.

Example 21 is a non-transitory computer readable storage mediumcomprising instructions that when executed configure hardware processingcircuitry to perform operations comprising: capturing a first image viaan imaging sensor; identifying an object in the first image; and inresponse to an accuracy of the identification meeting a first criterion,pre-loading a braking system of an autonomous vehicle.

In Example 22, the subject matter of any one or more of Examples 19-21optionally include the operations further comprising: capturing a secondimage with the sensor; further identifying the object in the secondimage; and in response to an accuracy of the further identificationmeeting a second criterion, applying brakes via the pre-loaded brakingsystem.

In Example 23, the subject matter of any one or more of Examples 19-22optionally include the operations further comprising providing the firstimage to a trained model to generate a set of probabilities that theobject is each of a corresponding set of object types, wherein theaccuracy of the identification does not meet the first criterion if noneof the probabilities in the set of probabilities is above a threshold.

In Example 24, the subject matter of any one or more of Examples 19-23optionally include the operations further comprising releasing thepre-load of the braking system in response to the accuracy of thefurther identification meeting a second criterion.

In Example 25, the subject matter of any one or more of Examples 19-24optionally include wherein the accuracy of the identification does notmeet the first criterion if the identification of the object is based onless than a predefined number of images.

In Example 26, the subject matter of any one or more of Examples 19-25optionally include the operations further comprising: predicting a pathof the autonomous vehicle; predicting a path of the object; anddetermining a probability that the path of the object intersects withthe path of the autonomous vehicle, wherein the pre-loading of thebraking system is further based on the probability.

In Example 27, the subject matter of Example 26 optionally includes theoperations further comprising predicting if a position of the autonomousvehicle will overlap with a position of the object at a particular time,wherein the pre-loading of the braking system is further based on theprediction.

Example 28 is an apparatus comprising: means for capturing a first imagevia an imaging sensor; means for identifying an object in the firstimage; and means for in response to an accuracy of the identificationmeeting a first criterion, pre-loading a braking system of an autonomousvehicle.

In Example 29, the subject matter of Example 28 optionally includes theoperations further comprising: means for capturing a second image withthe sensor; means for further identifying the object in the secondimage; and means for applying brakes via the pre-loaded braking systemin response to an accuracy of the further identification meeting asecond criterion.

In Example 30, the subject matter of any one or more of Examples 28-29optionally include means for providing the first image to a trainedmodel to generate a set of probabilities that the object is each of acorresponding set of object types, wherein the means for applying brakesvia the pre-loaded braking system is configured to determine the firstcriterion is not met if none of the probabilities in the set ofprobabilities is above a threshold.

In Example 31, the subject matter of any one or more of Examples 28-30optionally include means for releasing the pre-load of the brakingsystem in response to the accuracy of the further identification meetinga second criterion.

In Example 32, the subject matter of any one or more of Examples 28-31optionally include wherein the means for applying brakes via thepre-loaded braking system is configured to not pre-load the brakingsystem in response to identification of the object being based on lessthan a predefined number of images.

In Example 33, the subject matter of any one or more of Examples 28-32optionally include the operations further comprising: means forpredicting a path of the autonomous vehicle; means for predicting a pathof the object; and means for determining a probability that the path ofthe object intersects with the path of the autonomous vehicle, whereinthe means for pre-loading of the braking system is further configured topre-load the braking system based on the probability.

In Example 34, the subject matter of Example 33 optionally includesmeans for predicting if a position of the autonomous vehicle willoverlap with a position of the object at a particular time, wherein themeans for pre-loading of the braking system is configured to pre-loadthe braking system based on the prediction.

Also, in the above Detailed Description, various features can be groupedtogether to streamline the disclosure. However, the claims cannot setforth every feature disclosed herein, as examples can feature a subsetof said features. Further, examples can include fewer features thanthose disclosed in a particular example. Thus, the following claims arehereby incorporated into the Detailed Description, with each claimstanding on its own as a separate example. The scope of the examplesdisclosed herein is to be determined with reference to the appendedclaims, along with the full scope of equivalents to which such claimsare entitled.

We claim:
 1. An apparatus, comprising: one or more processors; and amemory storing instructions that, when executed by the one or moreprocessors, cause the one or more processors to perform operationscomprising: accessing first sensor data indicating an environment inwhich an autonomous vehicle is located; estimating, using the firstsensor data, a particular object in the environment; determining anaccuracy of the estimating of the particular object; and increasing abraking pressure of a vehicle braking system of the autonomous vehicleto a first braking pressure, the first braking pressure being determinedbased on the accuracy of the estimating of the particular object.
 2. Theapparatus of claim 1, wherein the accuracy of the estimating of theparticular object satisfies a threshold accuracy level and wherein thefirst braking pressure is insufficient to exert a braking force on theautonomous vehicle.
 3. The apparatus of claim 2, the operations furthercomprising maintaining the vehicle braking system at the first brakingpressure.
 4. The apparatus of claim 1, the operations furthercomprising: determining a velocity of the autonomous vehicle; andmodifying the braking pressure of the vehicle braking system to amodified braking pressure, the modified braking pressure beingdetermined based on the velocity of the autonomous vehicle.
 5. Theapparatus of claim 1, the operations further comprising: accessingsecond sensor data obtained after the first sensor data; furtherestimating the particular object using the second sensor data; and basedon an accuracy of the further estimating of the particular objectsatisfying a criterion, applying brakes of the autonomous vehicle atleast in part by further increasing the braking pressure of the vehiclebraking system.
 6. The apparatus of claim 1, further comprising: thevehicle braking system, the vehicle braking system comprising: apressurized air reservoir; a service brake chamber in fluidcommunication with the pressurized air reservoir via a service brakeline; and a service brake valve on the service brake line to control aflow of pressurized air from the pressurized air reservoir to theservice brake chamber to selectively engage or disengage a servicebrake, the increasing of the braking pressure comprising configuring theservice brake valve to route pressurized air from the pressurized airreservoir to the service brake chamber.
 7. The apparatus of claim 6,further comprising a pressure sensor in fluid communication with theservice brake chamber, wherein the increasing of the braking pressurecomprises: accessing a pressure measurement from the pressure sensor;and maintaining the configuration of the service brake valve until thepressure measurement indicates a pressure satisfies a first threshold.8. The apparatus of claim 1, the operations further comprisingdecreasing the braking pressure of the vehicle braking system inresponse to an accuracy of a further estimating of the particularobject.
 9. The apparatus of claim 1, the determining of the accuracy ofthe estimating of the particular object comprising determining that theestimating of the particular object is based on less than a thresholdnumber of images.
 10. The apparatus of claim 1, the operations furthercomprising determining, using a trained model, a probability that theparticular object is of a first object type, the accuracy of theestimating of the particular object being determined based on theprobability.
 11. The apparatus of claim 1, the operations furthercomprising maintaining the braking pressure below a threshold brakingpressure.
 12. The apparatus of claim 1, the operations furthercomprising maintaining a resistance between at least two brakingsurfaces of the vehicle braking system below a threshold resistance. 13.The apparatus of claim 1, the operations further comprising maintaininga velocity of the autonomous vehicle while increasing the brakingpressure.
 14. The apparatus of claim 1, the operations furthercomprising activating the braking system for a defined time, theactivating of the braking system for the defined time being insufficientto exert a braking force on the autonomous vehicle.
 15. A method,comprising: accessing first sensor data indicating an environment inwhich an autonomous vehicle is located; estimating, using the firstsensor data, a particular object in the environment; determining anaccuracy of the estimating of the particular object; and increasing abraking pressure of a vehicle braking system of the autonomous vehicleto a first braking pressure, the first braking pressure being determinedbased on the accuracy of the estimating of the particular object. 16.The method of claim 15, further comprising: accessing second sensor dataobtained after the first sensor data; further estimating the particularobject using the second sensor data; and based on an accuracy of thefurther estimating meeting a criterion, applying brakes of theautonomous vehicle at least in part by further increasing the brakingpressure of the vehicle braking system.
 17. The method of claim 15,further comprising determining, using a trained model, a probabilitythat the particular object is of a first object type, the determining ofthe accuracy of the estimating of the particular object being based atleast in part on the probability.
 18. The method of claim 15, furthercomprising maintaining the braking pressure below a threshold brakingpressure.
 19. The method of claim 15, further comprising maintaining aresistance between at least two braking surfaces of the vehicle brakingsystem below a threshold resistance.
 20. A non-transitory computerreadable storage medium comprising instructions thereon that, whenexecuted, configure one or more processors to perform operationscomprising: accessing sensor data indicating an environment in which anautonomous vehicle is located; estimating, using the sensor data, aparticular object in the environment; determining an accuracy of theestimating of the particular object; and increasing a braking pressureof a vehicle braking system of the autonomous vehicle to a first brakingpressure, the first braking pressure being determined based on theaccuracy of the estimating of the particular object.